/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package Estados;

/**
 *
 * @author Alvaro
 */
public class eMisioneros extends Estado{

    int[] situacion=new int[3];
/*Posicion 0: Misioneros
 *Posicion 1: Canibales
 *Posicion 2: Balsa
 * */
    public eMisioneros(){
        super();
        situacion[0]=3;
        situacion[1]=3;
        situacion[2]=1;
    }

    public eMisioneros(Estado p){
        super(p);
        situacion[0]=3;
        situacion[1]=3;
        situacion[2]=1;
    }

    public eMisioneros(Estado p,int[] sit){
        super(p);
        situacion[0]=sit[0];
        situacion[1]=sit[1];
        situacion[2]=sit[2];
    }

    public int[] getSituacion(){
        return this.situacion;
    }

    public boolean Iguales(Estado e1,Estado e2){
        eMisioneros estado1= (eMisioneros) e1;
        eMisioneros estado2= (eMisioneros) e2;
        int[] a=estado1.getSituacion();
        int[] b=estado2.getSituacion();
        return a[0]==b[0] && a[1]==b[1] && a[2]==b[2];
    }

    public String toString(){
        String s="Misioneros: "+ this.situacion[0] +
                "Canibales: "+this.situacion[1] + "Balsa:" + this.situacion[2];
        return s;
    }

    public int CalculaHeuristica() {
        throw new UnsupportedOperationException("Not supported yet.");
    }


    public int getHeuristica() {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    @Override
    public int setHeuristica(int h) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

}
